A Multiple-Input Multiple-Output method (hereinafter abbreviated as a MIMO method) using a plurality of antennas for transmission and reception is known as a method of improving frequency utilization efficiency by means of parallel transmissions utilizing independency of propagation paths. In the MIMO method, a plurality of propagation paths are set between the transmission side and the reception side by using a plurality of antennas at least on one side of either transmission side or reception side.
On the other hand, a Code Division Multiple Access method (hereinafter abbreviated as a CDMA method) is known as a method for realizing circuit multiplex at the same time and at the same frequency by using code spread.
A description of a conventional code spread radio communication system combining the MIMO method and the CDMA method will be provided with reference to FIG. 1.
This code spread radio communication system is provided with a transmitter 301 disposed on the transmission side and a receiver 302 disposed on the reception side. Here, it is assumed for simplifying the explanation that the transmitter 301 is provided with two antennas 311 and 312, and the receiver 302 is provided with two antennas 321 and 322.
The transmitter 301 is provided with transmission signal generation circuits 103 and 104 connected to the antennas 311 and 312, respectively, a spread code assigning circuit 304, and a scheduler 303. The spread code assigning circuit 304 supplies the transmission signal generation circuits 103 and 104 with code assigning signals SALOC1 and SALOC2, respectively. The scheduler 303 outputs a data making request signal SDDA to the transmission signal generation circuits 103 and 104, and it outputs to the spread code assigning circuit 304, a code multiplex number notifying signal SCNUM for notifying a code multiplex number (code multiplex number) corresponding to a data volume. The code multiplex number described here is the one showing how many spread codes are used for spread modulation and how the spread modulated signals are multiplexed for transmission in each of the transmission signal generation circuits 103 and 104. In other words, the code multiplex number shows how many spread codes are used for each propagation path.
The data making request signal SDDA, the code assigning signal SALOC1 and information SDATA to be transmitted are inputted to the transmission signal generation circuit 103. The transmission signal generation circuit 103 then generates a transmission data from the information SDATA to be transmitted according to the data making request signal SDDA. The transmission signal generation circuit 103 spreads and multiplexes this transmission data with the spread codes corresponding to the code assigning signal SALOC1 and outputs a transmission signal STX1. The transmission signal STX1 is transmitted from the antenna 311. Similarly, the transmission signal generation circuit 104 makes a transmission data according to the data making request signal SDDA, and spreads and multiplexes this transmission data with the spread codes corresponding to the code assigning signal SALOC2 for outputting a transmission signal STX2. The transmission signal STX2 is transmitted from the antenna 312. Since the transmission signals STX1 and STX2 transmitted from the antennas 311 and 312 are subjected to the code spread, respectively, they are formed in code spread transmission signals, respectively. The spread code assigning circuit 304 receives the code multiplex number notifying signal SCNUM, and outputs the spread code assigning signals SALOC1 and SALOC2 for designating as many spread codes as the number corresponding to this input signal to each of the propagation paths.
Referring to FIG. 2, a description of a configuration of the transmission signal generation circuits 103 and 104 will be provided. Since the transmission signal generation circuits 103 and 104 have the same circuit configuration, an explanation will be made here with the transmission signal generation circuit 401. Let the spread code assigning signal supplied to the transmission signal generation circuit 401 be SALOC.
The transmission signal generation circuit 401 is provided with a data generation circuit 402, an encoder 403, an interleaver 404, a serial/parallel converter 405, a spread unit 406 and a code multiplex unit 407. The data generation circuit 402 receives the information SDATA to be transmitted as an input, and outputs a transmission data STXD under a control given by the data making request signal SDDA. The encoder 403 encodes the transmission data STXD and outputs an encoded data SCODED. The interleaver 404 rearranges (interleaves) the bit arrangement of the encoded data SCODED according to a predetermined rule, and outputs it as an interleaver output signal SIO.
Here, it is assumed that the code multiplex number for each transmission antenna is 4. In this case, the serial/parallel converter 405 receives the code assigning signal SALOC as an input, parallel converts the interleaver output signal SIO according to the code multiplex number, and outputs them as spread unit input signals SSPL0, SSPL1, SSPL2 and SSPL3. The spread unit 406 spreads the spread unit input signals SSPL0, SSPL1, SSPL2 and SSPL3 with spread codes C0, C1, C2 and C3 which are orthogonal to each other designated by the code assigning signal SALOC, and outputs spread unit output signals SSPO0, SSPO1, SSPO2 and SSPO3. The code multiplex unit 407 multiplexes the spread unit output signals SSPO0, SSPO1, SSPO2 and SSPO3, and outputs a transmission signal STX.
The code assigning signal SALOC is a signal for designating the spread codes used in the spread unit 406. By knowing how many spread codes are designated in the code assigning signal SALOC, the code multiplex number designated to the transmission signal generation circuit 401 can be comprehended.
Referring back to FIG. 1, In the receiver 302, the reception signals SRX1 and SRX2 are respectively received from the antennas 321 and 322. The receiver 302 is provided with a demodulation circuit 305 for demodulating the reception signals SRX1 and SRX2. The demodulation circuit 305 outputs the regenerated data SDD1 and SDD2 corresponding to the transmission data generated in the transmission signal generation circuits 103 and 104.
FIG. 3 illustrates an example of internal configuration of the demodulation circuit 305. Here, it is assumed that the maximum value of the code multiplex number is 4. In this case, the demodulation circuit 305 is provided with 4 de-spreaders 502 through 505 connected to the antenna 321 and 4 de-spreaders 506 through 509 connected to the antenna 322. A linear filter 510 is connected to the outputs of the de-spreaders 502 and 506, and a linear filter 511 is connected to the outputs of the de-spreaders 503 and 507. Similarly, a linear filter 512 is connected to the outputs of the de-spreaders 504 and 508, and a linear filter 513 is connected to the outputs of the de-spreaders 505 and 509. Each of the linear filters 510 through 513 is provided for suppressing signal components except for the transmission signal. The demodulation circuit 305 is also provided with a parallel/serial converter 514 for parallel/serial converting the outputs of the linear filters 510 through 513. The demodulation circuit 305 is further provided with two deinterleavers 515 and 516 connected to the output side of the parallel/serial converter 514, and decoders 517 and 518 respectively connected to the output side of the deinterleavers 515 and 516.
The de-spreaders 502 through 505 connected to the antenna 321 receive the reception signal SRX1 from the antenna 321 as an input. The de-spreaders 502 through 505 de-spread the reception signal SRX1 respectively with the spread codes C0, C1, C2 and C3, and output de-spreader output signals SDSO10, SDSO11, SDSO12 and SDSO13. The de-spreaders 506 through 509 connected to the antenna 322 receive the reception signal SRX2 from the antenna 322 as an input. The de-spreaders 506 through 509 de-spread the reception signal SRX2 respectively with the same spread codes C0, C1, C2 and C3 as the de-spreader 502 through 506, and output de-spreader output signals SDSO20, SDSO21, SDSO22 and SDSO23. Of course, the spread codes C0, C1, C2 and C3 mentioned here are respectively the same as the spread codes C0, C1, C2 and C3 used in the transmitter 301.
The linear filter 510 receives the de-spreader output signals SDSO10 and SDSO20. The linear filter 510 suppresses the signal components corresponding to the transmission signals other than the transmission signals STX1 and STX2 in the de-spreader output signals SDSO10 and SDSO20. The linear filter 510 outputs filter output signals SFO10 and SFO20 corresponding to the components spread with the spread code C0 in the transmission signals STX1 and STX2. Similarly, the linear filter 511 receives the de-spreader output signals SDSO11 and SDSO21, and suppresses the signal components corresponding to the transmission signals other than the transmission signals STX1 and STX2 in the de-spreader output signals SDSO11 and SDSO21. The linear filter 511 outputs filter output signals SFO11 and SFO21 corresponding to the components spread with the spread code C1 in the transmission signals STX1 and STX2. The linear filter 512 receives the de-spreader output signals SDSO12 and SDSO22, and outputs filter output signals SFO12 and SFO22 corresponding to the components spread with the spread code C2 in the transmission signals STX1 and STX2. The linear filter 513 receives the de-spreader output signals SDSO13 and SDSO23, and outputs filter output signals SFO13 and SFO23 corresponding to the components spread with the spread code C3 in the transmission signals STX1 and STX2.
The parallel/serial converter 514 parallel/serial converts the filter output signals SFO10, SFO11, SFO12 and SFO13 for outputting the deinterleaver input signal SDII1, and also parallel/serial converts the filter output signals SFO20, SFO21, SFO22 and SFO23 for outputting the deinterleaver input signal SDII2. Of course, the operation of parallel/serial conversion in the parallel/serial converter 514 corresponds to the operation of the serial/parallel conversion in the serial/parallel converter 405 (refer to FIG. 2) included in the transmission signal generation circuits 103 and 104 in the transmitter 301.
The deinterleavers 515 and 516 receive respectively the deinterleaver input signals SDII1 and SDII2 as an input for deinterleaving, and output the deinterleaver output signals SDIO1 and SDIO2. The deinterleaving operation in the deinterleavers 515 and 516 is the operation reverse to the interleaving operation in the interleaver 404 (refer to FIG. 2) included in the transmission signal generation circuits 103 and 104 in the transmitter 301. The decoders 517 and 518 receive the deinterleaver output signals SDIO1 and SDIO2 as an input for performing error correction decoding, and output decoded data SDD1 and SDD2, respectively. These decoded data SDD1 and SDD2 are respectively the same as the transmission data generated in the transmission signal generation circuits 103 and 104, if the reception signal is normally received and if the error correction decoding is correctly performed.
In the case that the code multiplex number in the signal transmitted by and coming from the transmitter 301 is less than 4, no meaningful signals are outputted from the de-spreaders corresponding to the spread codes which are not used on the side of the transmitter 301. Therefore, the signals coming from those de-spreaders may be ignored for performing the parallel/serial conversion and so forth.
In the code spread radio communication system as described above, one propagation path is formed between the transmission antenna 311 and the reception antenna 321, and another propagation path is formed between the transmission antenna 312 and the reception antenna 322. In these propagation paths, information (transmission data) different from each other is transmitted. Since the same spread codes are used in the both propagation paths, in case that correlation between the propagation paths is high, the information transmitted through one propagation path is interfered by the information transmitted through the other propagation path. This brings an increase in a code error rate in the transmitted information and so forth. Specifically, it becomes difficult to make separation among different transmission signals using the same spread codes in the linear filter and accordingly, the reception characteristic is greatly deteriorated.
In the case of a general CDMA system, for example, the unexamined patent publication No. 2001-008262 (hereinafter referred to as document 1) discloses a technology to assign optimum spread codes according to inter-channel interference. Specifically, the document 1 discloses that inter-channel space correlations and code correlations between spread codes used in the communication are calculated, and products of these space correlations and code correlations are obtained to further obtain time and space correlations, and selection of the spread codes are made so as to lessen the sum of the time and space correlations over the entire channels. However, there is no disclosure of a guideline for a specific spread code assignment to each channel.
On the other hand, the unexamined patent publication No. 2000-059334 (hereinafter referred to as document 2) discloses a method of estimating conditions of propagation paths. This method is such that, on the reception side, two kinds of correlation values in which only codes are different are obtained by de-spread, a variance regarding each of the two kinds of correlation values is calculated, and only the less value of them is used for estimating an interfering wave power.
However, in the conventional code spread radio communication system using a plurality of antennas, the same spread code is used for different propagation paths, and therefore, in case that correlation between propagation paths is high, a problem occurs such that the information mutually interferes each other between such propagation paths, and the reception characteristic is resultantly deteriorated.
An object of this invention is to provide a code assigning method by which even if correlation exists between propagation paths in a code spread radio communication system, spread codes may be dynamically assigned to each propagation path corresponding to the correlation between propagation paths.
Another object of this invention is to provide a code spread radio communication system using the above-mentioned code assigning method.